package com.diandian.backend.entrance.client;

import com.diandian.backend.entrance.client.dto.log.*;
import com.diandian.base.boot.starter.response.BaseResult;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;

@FeignClient("diandian-log")
//@FeignClient(value = "business-diandian-log", url = "http://localhost:8082", path = "")
public interface DianDianLogClient {

    // 普通日志-新增
    @PostMapping("/log/record/add")
    BaseResult add(@RequestBody LogRecordAddDTO param);

    // 普通日志-分页查询
    @PostMapping("/log/record/page")
    BaseResult page(@RequestBody LogRecordPageDTO param);

    // 任务日志-分页查询
    @PostMapping("/log/task/page")
    BaseResult logTaskPage(@RequestBody LogTaskPageParamDTO param);

    // 任务日志-查询详情
    @PostMapping("/log/task/detail")
    BaseResult logTaskGetDetail(@RequestBody LogTaskDetailParamDTO param);

    // 任务日志-修改数据(仅待执行的允许修改）
    @PostMapping("/log/task/update/ready")
    BaseResult logTaskUpdateReady(@RequestBody LogTaskUpdateReadyParamDTO param);

    // 任务日志-修改操作状态
    @PostMapping("/log/task/update/status")
    BaseResult logTaskUpdateStatus(@RequestBody LogTaskUpdateStatusParamDTO param);

    // 任务日志-删除数据(仅待执行的允许修改）
    @PostMapping("/log/task/delete/ready")
    BaseResult logTaskDeleteReady(@RequestBody LogTaskDeleteReadyParamDTO param);

    // 任务日志-新增任务
    @PostMapping("/log/task/add")
    BaseResult logTaskAdd(@RequestBody LogTaskAddParamDTO param);

    // 任务日志-进程-分页查询
    @PostMapping("/log/task/process/page")
    BaseResult logTaskProcessPage(@RequestBody LogTaskProcessPageParamDTO param);

    // 任务日志-进程-列表查询
    @PostMapping("/log/task/process/list")
    BaseResult logTaskProcessList(@RequestBody LogTaskProcessListParamDTO param);

}
